- (void)didChangeLabel;
- (void)didChangeIcon;
-- (void)didChangeSensitive;
- (void)didChangeVisible;
- (void)didChangeToggled;
- (void)didChangeAccel;
- (void)didSelectItem:(id)sender;
+- (BOOL)validateMenuItem:(NSMenuItem *)menuItem;
@end
@implementation GNSMenuItem
+- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
+{
+ return gtk_menu_tracker_item_get_sensitive (trackerItem) ? YES : NO;
+}
+
- (id)initWithTrackerItem:(GtkMenuTrackerItem *)aTrackerItem
{
self = [super initWithTitle:@""
[self didChangeLabel];
[self didChangeIcon];
- [self didChangeSensitive];
[self didChangeVisible];
[self didChangeToggled];
[self didChangeAccel];
[self setImage:nil];
}
-- (void)didChangeSensitive
-{
- [self setEnabled:gtk_menu_tracker_item_get_sensitive (trackerItem) ? YES : NO];
-}
-
- (void)didChangeVisible
{
[self setHidden:gtk_menu_tracker_item_get_visible (trackerItem) ? NO : YES];
if (self != nil)
{
- [self setAutoenablesItems:NO];
-
tracker = gtk_menu_tracker_new (observable,
model,
NO,
if (self != nil)
{
- [self setAutoenablesItems:NO];
-
tracker = gtk_menu_tracker_new_for_item_submenu (trackerItem,
menu_item_inserted,
menu_item_removed,